Voyez la solution de ce laboratoire ici.
Produire un script qui demande à l'usager d'entrer un chemin valide et une taille de fichier. Le script énumérera ensuite tous les fichiers ou répertoires se trouvant dans le chemin donné et qui sont plus grands que la taille donnée.
Le script devra s'assurer que le chemin donné par l'usager est valide (donc existe) avant d'aller plus loin. La taille donnée par l'usager ne sera pas vérifiée, pour plus de simplicité (vous pouvez donc supposer que l'usager entre toujours une taille valide).
Bonus: pour des points supplémentaires, demandez aussi un opérateur à l'usager (<, > ou =). Faites en sorte que votre script retourne les fichiers qui correspondent au critère demandé (plus petit, plus grand ou égal à la taille donnée). L'opérateur donné par l'usager ne sera pas vérifié, pour plus de simplicité (vous pouvez donc supposer que l'usager entre toujours un opérateur valide).
Voici un cheminement possible pour arriver au but une étape à la fois. Vous êtes toutefois libres de procéder comme bon vous semble.
Faites en sorte que le programme demande à l'usager d'entrer un chemin vers un répertoire. Le script doit vérifier si le chemin est valide. S'il ne l'est pas, il doit redemander un chemin et revérifier, jusqu'à ce que le chemin donné soit valide.
Quelques trucs:
Faites en sorte que votre script se déplace dans le répertoire reçu, puis énumère tous les fichiers qui s'y trouvent. Inspirez-vous de mon dernier exemple sur les foreach!
Ajoutez maintenant ce qu'il faut pour demander à l'usager d'entrer une taille (et un opérateur (<,> ou =), si vous faites le bonus) entre l'étape 1 et l'étape 2. Vous n'avez pas besoin de valider ces réponses (et c'est normal que votre script plante si l'usager entre n'importe quoi - on ne se souciera pas de ça pour garder ça simple).
Modifiez le code que vous avez créé à l'étape 2 pour n'énumérer que les fichiers qui sont plus grands que la taille spécifiée.
Petit truc:
Modifiez maintenant le code que vous avez créé à l'étape 4 pour tenir compte de l'opérateur. Ce que vous avez à ajouter ne devrait pas être trop compliqué...
Vous avez trois choix pour la remise: